导航菜单
首页 >  02325计算机系统结构自考教材 李学干pdf 百度云  > 自考计算机系统结构笔记整理

自考计算机系统结构笔记整理

第一章概论

1.1 计算机系统的层次结构

计算机系统层次结构中,“机器”被定义为是能存储和执行相应语言程序的算法和数据结构的集合体。

各级机器级的实现采用翻译技术或解释技术,或是这两种技术的结合。

1.2 计算机系统结构、计算机组成和计算机实现

1.2.1 计算机系统结构的定义和内涵

系统结构是对计算机系统中各级界面的定义及其上下的功能分配。

透明性概念:客观存在的事物或属性从某个角度看不到,称这些事物和属性对它是透明的。

对于计算机系统结构透明的有:数据总线宽度,阵列运算部件,通道是采用结合型还是独立型,Cache 存储器,存储器的模 M 交叉存取,串行、重叠还是流水控制方式。

1.计算机组成

2.计算机实现

计算机实现的设计着眼于器件技术和微组装技术,其中,器件技术起着主导作用。

1.3 计算机系统的软、硬件取舍及定量设计原理

1.3.1 软、硬件的基本原则

软、硬件功能分配比例对计算机系统性能的影响:

(1)    提高硬件功能的比例可提高解题速度,减少程序所需的存储空间,但会增加硬件成本,降低硬件利用率和计算机系统的灵活性及适应性。

(2)    提高软件功能的比例可降低硬件成本,提高系统的灵活性、适应性,但解题速度会

下降,软件设计费用和所需的存储量将增加。

1.4 软件、应用、器件的发展对系统结构的影响

1.4.1 软件发展对系统结构的影响

实现软件移植的技术:1、统一高级语言;2、采用系列机;3、模拟和仿真。

仿真和模拟的区别:仿真是用微程序解释,其解释程序存储于控制存储器中;而模拟是用机器语言解释,其解释程序存储于主存中。

软件移植采用统一高级语言途径的方法和存在的问题:高级语言面向题目和算法,与机器具体结构关系不大。统一出一种通用的高级语言就可以编写出可移植与不同机器的软件。

存在的问题:

(1)    不同的用途要求的语法语义结构不同。

(2)    人们对语言的基本结构看法不一。

(3)    同一种高级语言在不同厂商的机器上页不能完全通用。

(4)    受习惯势力阻挠,人们不愿抛弃惯用的已验证的软件。

软件兼容的定义及系列机对软件兼容的要求:

(1)    机器语言程序及编译程序都不加修改地适用于系列内各档机器,则称各档机器是软件兼容。

(2)    软件兼容包括向上(下)兼容和向前(后)兼容。

(3)    同一系列内的机器一般应做到向上兼容。

(4)    系列机软件必须保证向后兼容,力争向前兼容。

1.5 系统结构中的并行性开发及计算机系统的分离

1.5.1 并行性的概念与开发

1.     并行性的含义与级别

从计算机执行的角度来看,并行性等级由高到低可分为指令内部、指令之间、任务或进程间和作业或程序间。

2.     并行性开发的途径

并行性开发的途径有时间重叠、资源重复和资源共享。时间重叠:在并行性概念中引入时间因素,让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转时间而赢得速度。

资源重复:在并行性概念中引入空间因素,通过重复设置硬件资源来提高可靠性或性能。

资源共享:是用软件方法让多个用户按一定时间顺序轮流使用同一套资源来提高其利用率,相应也就提高系统的性能。

1.5.2 计算机系统的分类

弗林分类法(弗林 Flynn)

单指令单数据流(SISD):传统的单处理器计算机单指令多数据流(SIMD):阵列处理剂、相联处理机多指令单数据流(MISD):宏流水及脉动阵列流水机多指令多数据流(MIMD):多处理机

冯氏分类法(冯泽云 Tse-yun Feng):并行性从计算机系统处理数据的角度划分

字串位串(WSBS):每次只处理一个字中的一位,无并行性,如早期的位串行机字串位并(WSBP):每次处理一个字中的 n 位,如传统的位并行机字并位串(WPBS):一次处理 m 个字中的 1 位,如某些阵列处理剂、相联处理机

字并位并(WPBP):一次处理 m 个字,每个字为 n 位,如某些相联处理机、大多数阵列

处理机、多处理机

第二章 数据表示、寻址方式与指令系统

2.1 数据表示

2.1.1 数据表示与数据结构

数据结构要通过软件映像变换成机器所具有的各种数据表示实现,数据表示是数据结构的实现。

数据表示和数据结构之间的关系及引入高级数据表示的基本原则:

(1)    数据表示反映了各种数据元素或信息单元之间的结构关系,数据结构要通过软件映像变换成机器所具有的各种数据表示来实现。不同的数据表示可为数据结构的实现提供不同的支持,表现在实现效率和方便性上不同。数据结构和数据表示是软件和硬件的交界面。

(2)    引人高级数据表示的基本原则:一是看系统效率是否有显著提高,包括实现时间和存

储空间是否有显著减少;二是看引入这种数据表示的通用性和利用率是否提高。

2.1.2 高级数据表示

1. 自定义数据表示

自定义数据表示包括标识符数据表示和数据描述符两类。

数据描述符和标志符的差别:

(1)    描述符是与数据分开存放,用于描述所要访问的数据是整块的还是单个的,访问该数据块或数据元素所要的地址以及其他信息等。

(2)    标志符则是和每个数据相连,合存于同一存储单元,用于描述单个数据的类型特性。

2.   向量、数组数据表示

3.   堆栈数据表示

2.1.3 引入数据的表示原则

2.1.4 浮点尾数基值大小和下溢处理方法的选择

1. 浮点尾数基值的选择

(1) 当阶位 p 一定时,尾数采取什么进制都会影响到数的可表示范围、精度及数轴上分布的离散程度。

(2) 采用尾基为 rm 的浮点数表示的特性

(3) 数轴上的分布

在相同的机器字长和尾数位数的情况下,浮点尾数基值取小,可使浮点数在数轴上

的分布变密。

(3) 可表示的精度

浮点尾数基值增大,可表示的精度下降。

(4) 运算中的精度损失

浮点尾数基值增大,运算中的精度损失减小。

2.2 寻址方式

2.2.1 寻址方式的三种面向

计算机面向主存、寄存器、堆栈寻址。

2.2.3 程序在主存中的定位技术

程序的静态再定位和动态再定位的含义及实现方法:

静态再定位是指程序在执行时物理地址不再改变的定位技术。它是利用 Von Neumann 型机器指令可修改的特点,在目的程序装入主存时,由装入程序用软件方法把目的程序的逻辑地址变换成物理地址,程序在执行时物理地址不再改变。

动态再定位是指在执行每条指令时才形成物理地址的定位技术。该方法利用硬件上增加基址寄存器和地址加法器,程序执行时,通过地址加法器将逻辑地址加上基址寄存器的程序基址形成物理(有效)地址后去访问主存。

2.3 指令系统的设计和优化

计算机的运算类指令和运算器结构主要是按机器有什么样的数据表示来确定的。

2.3.2 指令操作码的优化

指令是由操作码和地址码两部分组成。

哈夫曼树例题:假设某机器共有 8 条指令(I1-I8),使用频度如表所示,要求:

(1)构造哈夫曼(Huffman)树;

(2)列表写出操作码的哈夫曼编码和只有两种码长的扩展操作码; 

(3)分别计算使用哈夫曼编码和只有两种码长的扩展操作码的平均码长。构造哈夫曼树的方法:将所有指令按使用频度升序排列,每次选择最小的两个频度节点合并为一个频度作为新节点。哈夫曼树节点左侧线标记 1,右侧标记 0。

哈夫曼编码求法:求某一指令的哈夫曼编码,则从哈夫曼树对应的指令出发,一直连接到 1.00 节点,将连线上标记的数字按照节点的顺序收集起来,比如指令 I4 得到的数字为 001,再将结果倒排,则这里变为 100,此时所得编码即为该指令的哈夫曼编码。扩展操作码:将所有指令按使用频度降序排列,前三个指令的扩展操作码为 00、01、10。后续的扩展操作码前一律加 11,然后按照 00、01、10、11、...(即二进制数+1)顺序往下排列。作为二进制的 00、01、10、11 可表示的扩展操作码有限,因此扩展操作码可变为 000、001、010、011、111 等形式(注:本题要求两种码长),具体长度为log2N 的(N 为指令个数)的向下取整,比如本题共有 8 个指令,因此 11 后的编码长度为3,所以从 000 往下编码,如果长度为 7,则 11 后的编码长度为 2,则从 00 往下编码。

2.4 指令系统的发展和改进

2.4.2 按 CISC 方向发展和改进指令系统

设计 CISC 系统时,可以从面向目标程序、面向高级语言、面向操作系统三个方面的优化实现来考虑。

2.4.3 按 RISC 方向发展和改进指令系统

1.CISC 的问题

(1)    指令系统庞大,一般指令在 200 条以上;

(2)    许多指令的操作复杂,执行速度很低,甚至不如用几条简单、基本的指令组合实现;

(3)    难以优化生成高效机器语言程序,编译程序也太长、太杂;

(4)    指令使用频率不太高,且差别很大,增加机器设计人员负担,降低性能价格比。

2.设计 RISC 的基本原则

(1)    只使用频度高的指令

(2)    减少指令系统的寻址方式

(3)    让所有指令都在一个机器周期内完成

(4)    扩大通用寄存器数量

(5)    提高指令执行速度,多用硬联控制实现

(6)    精简指令和优化编译程序,简单有效的支持高级语言实现

3.设计 RISC 结构采用的基本技术

1)       按设计 RISC 的一般原则来设计

2)       逻辑实现用硬联和微程序结合

3)       用重叠寄存器窗口

4)       指令用流水和延迟转移

5)       优化设计编译系统

第三章 存储、中断、总线与 I/O 系统

3.1 存储系统的基本要求和并行主存系统

3.1.1 存储系统的基本要求

存储系统的基本要求包括大容量、高速度和低价格。

例题1:设主存每个分体的存取周期为2μs,宽度为4个字节。采用模m多分体交叉存取,但实际频宽只能达到最大频宽的0.6倍。现要求主存实际频宽为4MB/s,问主存模数m 应取多少方能使两者速度基本适配?(其中,m取2的幂)

最大频宽公式:Bm=W*m/TM

则实际频宽:4MB/s=0.68*Bm=m*4B/2us≈4B/us 所以有:0.6*m*4/2≥4

解得 m≥2/0.6≈3.33

因为题目要求m取2的幂,所以取:m=4

例题2:程序存放在单字交叉存储器中,设访存申请队的转移概率λ=25%,分别求出模m=16 和m=32时每个存储周期能访问到的平均字数。由此可得到什么结论?

3.1.2 并行主存系统

要想提高主存频宽 Bm,使之与 CPU 速度相匹配,在同样的机器条件(即同样的 TM)下,只有设法提高存储器的字长 W。

3.2 中断系统

3.2.1 中断系统的分类和分级

1.中断的分类

IBM370 系统将中断分成机器校验、管理程序调用、程序性、外部、输入/输出和重新启

动六类。

外部中断包括:定时器中断、外部信号中断及中断键中断。

机器校验中断:紧急中断和可抑制中断。

中断分类的根据和分类的目的:

(1)    分类根据:把中断源性质相近、中断处理过程类似的归为一类。

(2)    分类目的:减少中断服务程序的入口,每一类给一个中断服务程序总入口,再由软件分支转入相应的中断处理部分,可以减少中断服务程序入口地址形成的硬件数量。

3.2.2 中断响应的次序与处理次序

中断响应的次序与中断处理次序区别:中断响应次序是用中断响应的硬件排队器实现,次序是由高到低固定好的,中断处理次序是中断处理程序处理完中断的次序。为了能根据需要,由操作系统灵活改变中断处理次序,设置中断级屏蔽寄存器,以决定某级中断能否进入中断响应排队器,只要能进入的总是让高级别的优先得到响应。

3.2.3 中断系统的软硬件功能分配

中断系统的性能主要是要有高的中断响应速度和中断处理的灵活性。

中断系统的软硬件功能分配实质上是中断处理程序软件和中断响应硬件的功能分配。

3.3 总线系统

3.3.1 总线的分类

多处理机互联使用纵横交叉开关。

总线按允许信息传送的方向有单向传输和双向传输两种。双向传输总线可分为半双向和全双向两种。

总线按用法分为专用和非专用两类。

3.3.2 总线的控制方式

优先次序的确定可以有串行

相关推荐: